'''
Created on 02/09/2013

@author: daniel
'''
import colecciones.arbolGeneral
import colecciones.nodoGeneral

def main():
    arbol=colecciones.arbolGeneral.ArbolGeneral(
        colecciones.nodoGeneral.NodoGeneral("raiz")
        )
    
    arbol2=colecciones.arbolGeneral.ArbolGeneral(
        colecciones.nodoGeneral.NodoGeneral("raiz2")
        )
    arbol2.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("unhijo")
            )
        )
    arbol2.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("segundohijo")
            )
        )
    arbol2.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("tercerhijo")
            )
        )
    
    arbol3=colecciones.arbolGeneral.ArbolGeneral(
        colecciones.nodoGeneral.NodoGeneral("raiz3")
        )
    arbol3.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("unhijoR3")
            )
        )
    arbol3.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("segundohijoR3")
            )
        )
    arbol3.agregarHijo(
        colecciones.arbolGeneral.ArbolGeneral(
            colecciones.nodoGeneral.NodoGeneral("tercerhijoR3")
            )
        )
    
    arbol.agregarHijo(arbol2)
    arbol.agregarHijo(arbol3)
    print "Cantidad de hijos de Arbol:"
    print arbol.getHijos().getTamanio()
    print "Cantidad de hijos de rama1:"
    print arbol.getHijos().elemento(0).getHijos().getTamanio()
    print "Cantidad de hijos de rama2:"
    print arbol.getHijos().elemento(1).getHijos().getTamanio()
    print "Cantidad de hijos de rama3:"
    if(arbol.getHijos().elemento(2)==None):print "No tiene"
    print "Ultimo elemento de la rama2:"
    print arbol.getHijos().elemento(1).getHijos().elemento(2).getDatoRaiz()

    
    

if __name__ == '__main__':
    main()